Track quality based multi-target tracker

ABSTRACT

Various embodiments are described herein for a track quality based multi-target tracker and an associated method. The method includes associating a measurement with a track, generating measurement association statistics for the track, generating and updating a track quality value for a track based on a measurement-to-track association likelihood, and updating track lists based on the track quality value and the measurement association statistics of the tracks in these lists. The tracker includes structure for carrying out this method.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application claims the benefit of U.S. Provisional PatentApplication No. 60/857,771, filed on Nov. 9, 2006, under35 U.S.C.§119(e) which application is incorporated herein by reference.

FIELD OF THE INVENTION

Various embodiments are described herein relating to a tracker forgeneral use in target tracking for applications including radar systems,sonar systems and the like.

BACKGROUND OF THE INVENTION

A multi-target tracking system designer encounters decision problemsrelated to track initialization, measurement to track association, trackconfirmation and track termination as well as possibly employing anm-detection-out-of-n time steps logic. These decisions can be difficultin a dense clutter scenario. Conventionally, these decisions can be madebased upon the total number of measurement associations, length of noassociations and the total life of the track in question. A decisionrule based upon the above quantities can be called a fixed rule. Such adecision rule affects true tracks (i.e., a track on a real or truetarget) and false tracks (i.e., a track on a target which is not real)in a similar way and also tends to produce inferior results since trackscannot be discriminated from false tracks. For instance, if a strictdecision rule is applied, then the number of false tracks and theaverage length of the false tracks would decrease. However, thecorresponding performance measures for the true tracks would be affectedsimilarly, which is undesirable. On the other hand, if a loose decisionrule is applied, then longer average track lives would result for bothtrue and false tracks as well as an increase in the number of falsetracks.

The general stages of a tracking method include a track initializationstage, a track maintenance stage (by data association) and a tracktermination stage. Probabilistic data association (PDA) based methodsare a popular approach for the track maintenance stage, which relaxesthe otherwise binding constraint of assigning one track to only onemeasurement and weighs the contribution of each measurement by theprobability that it is target originated. Another group of trackingmethods, unlike the PDA tracking methods, retains the single track tosingle measurement association constraint. These methods are known asassignment based methods since they use assignment or global nearestneighbor approaches to associate measurements to tracks. Since differentmeasurements are associated with different targets, these methods avoidthe track coalescence problem that occurs in closely spaced targetscenarios. However, the assignment-based methods can have higherperformance uncertainty than the PDA based methods due to the harddecision requirement in the former.

SUMMARY OF THE INVENTION

In one aspect, at least one embodiment described herein provides atracking module for tracking a detected target. The tracking modulecomprises a track association module, a track quality module and a tracklist update module. The track association module is configured toassociate a measurement with a track and generate measurementassociation statistics for the track. The track quality module isconfigured to generate and update a track quality value for a trackbased on a measurement-to-track association likelihood, and the tracklist update module is configured to update track lists based on thetrack quality value and the measurement association statistics of thetracks in these lists.

The track lists comprise a list of initial tracks, a list of confirmedtracks, and a list of unobservable tracks.

The tracking module can also comprise a track initiator configured togenerate a preliminary version of the track.

For a current time step, the track association module can be configuredto associate measurements from a measurement list with the list ofconfirmed tracks, then the list of unobservable tracks, and then thelist of initial tracks.

More particularly, for a current time step, the track association modulecan be configured to associate measurements from a measurement list withthe list of confirmed tracks and remove the associated measurements fromthe measurement list to generate a first updated measurement list, thenassociate measurements from the first updated measurement list with thelist of unobservable tracks and remove the associated measurements fromthe first updated measurement list to generate a second updatedmeasurement list, then associate measurements from the second updatedmeasurement list and a third updated measurement list corresponding to aprevious time step with the list of initial tracks and remove theassociated measurements from the second updated measurement list togenerate a third updated measurement list.

The track list update module can be configured to process the list ofinitial tracks by deleting the initial tracks with a track quality valueless than a first track quality threshold.

The track list update module can be configured to move a remaininginitial track to the list of confirmed tracks if the remaining initialtrack has a track quality value at the current time step and a trackquality value at a previous time step that are both greater than asecond track quality threshold, and measurement association statisticsthat indicate a number of associations greater than or equal to n_(i)where n_(i) is an integer.

The track list update module can be configured to process the list ofconfirmed tracks by deleting the confirmed tracks with a track qualityvalue less than a third track quality threshold.

The track list update module can be configured to move a remainingconfirmed track to the list of unobservable tracks if the measurementassociation statistics of the remaining confirmed track indicates nomeasurement associations in the last n_(na) time steps where n_(na) isan integer.

The track list update module can be configured to process the list ofunobservable tracks by deleting the unobservable tracks with a trackquality value less than a third track quality threshold.

The track list interaction module can be configured to move a remainingunobservable track to the list of confirmed tracks if the remainingunobservable track has a track quality value greater than a second trackquality threshold and measurement association statistics that indicate anumber of new associations greater than or equal to na where na is aninteger.

The track quality module can be configured to predict the track qualityvalue at a future time step P(k+1|k) given a track quality value at acurrent time step by multiplying a probability of a target existing forthe track with the track quality value after an update at the currenttime step.

When the track is associated with a measurement at a future time step,the track quality module can be configured to calculate a track qualityvalue P(k+1|k+1) by calculating a first sum by adding a likelihood thatthe target corresponding to the track exists and the associatedmeasurement is from the target with a likelihood that the target existsand the associated measurement is a false alarm, calculating a secondsum by adding the first sum with a likelihood that the target does notexist and the associated measurement is a false alarm, and dividing thefirst sum by the second sum.

For instance, when the track is associated with a measurement at afuture time step, the track quality module can be configured tocalculate a track quality value P(k+1|k+1) according to:

${P( {k + 1} \middle| {k + 1} )} = {\frac{1 - {\pi_{d}^{1}( {1 - {\Lambda ( {k + 1} )}} )}}{1 - {{\pi_{d}^{1}( {1 - {\Lambda ( {k + 1} )}} )}{P( {k + 1} \middle| k )}}}{P( {k + 1} \middle| k )}}$

where π_(d) ¹ is a total detection probability inside a detection gatefor the target,

${{\Lambda ( {k + 1} )} = \frac{f( {z( {k + 1} )} \middle| {x( {k + 1} \middle| k )} )}{f( {z( {k + 1} )} \middle|  )}},$

ƒ(z(k+1)|x(k+1|k)) is a likelihood of a measurement z(k+1) given apredicted position of the target x(k+1|k), ƒ(z(k+1)|Φ) is a density offalse alarm at z(k+1) and k is the current time step.

When the track is not associated with a measurement at a future timestep, the track quality module can be configured to calculate a trackquality value P(k+1|k+1) by calculating a first sum by adding alikelihood that the target corresponding to the track exists and it isnot detected with a likelihood that the target does not exist, anddividing the likelihood that the target corresponding to the trackexists by the first sum.

For instance, when the track is not associated with a measurement at afuture time step, the track quality module can be configured tocalculate a track quality value P(k+1|k+1) according to:

${P( {k + 1} \middle| {k + 1} )} = {\frac{1 - \pi_{d}^{2}}{1 - {\pi_{d}^{2}{P( {k + 1} \middle| k )}}}{P( {k + 1} \middle| k )}}$

where π_(d) ² is a total detection probability inside the detectiongate.

In another aspect, at least one embodiment described herein provides amethod of detecting a target, the method comprising associating ameasurement with a track, generating measurement association statisticsfor the track, generating and updating a track quality value for a trackbased on a measurement-to-track association likelihood, and updatingtrack lists based on the track quality value and the measurementassociation statistics of the tracks in these lists. The track listscomprise a list of initial tracks, a list of confirmed tracks, and alist of unobservable tracks.

The method can further comprise generating a preliminary version of thetrack.

For a current time step, the method comprises associating measurementsfrom a measurement list with the list of confirmed tracks, then the listof unobservable tracks, and then the list of initial tracks.

More particularly, for a current time step, the method comprise:associating measurements from a measurement list with the list ofconfirmed tracks, removing the associated measurements from themeasurement list to generate a first updated measurement list,associating measurements from the first updated measurement list withthe list of unobservable tracks, removing the associated measurementsfrom the first updated measurement list to generate a second updatedmeasurement list associating measurements from the second updatedmeasurement list and a third updated measurement list corresponding to aprevious time step with the list of initial tracks, and removing theassociated measurements from the second updated measurement list togenerate a third updated measurement list.

The method can comprise processing the list of initial tracks bydeleting the initial tracks with a track quality value less than a firsttrack quality threshold.

The method can comprise moving a remaining initial track to the list ofconfirmed tracks if the remaining initial track has a track qualityvalue at the current time step and a track quality value at a previoustime step that are both greater than a second track quality threshold,and measurement association statistics that indicate a number ofassociations greater than or equal to n_(i) where n_(i) is an integer.

The method can comprise processing the list of confirmed tracks bydeleting the confirmed tracks with a track quality value less than athird track quality threshold.

The method can comprise moving a remaining confirmed track to the listof unobservable tracks if the measurement association statistics of theremaining confirmed track indicates no measurement associations in thelast n_(na) time steps where n_(na) is an integer.

The method can comprise processing the list of unobservable tracks bydeleting the unobservable tracks with a track quality value less than athird track quality threshold.

The method can comprise moving a remaining unobservable track to thelist of confirmed tracks if the remaining unobservable track has a trackquality value greater than a second track quality threshold andmeasurement association statistics that indicate a number of newassociations greater than or equal to na where na is an integer.

The can comprise predicting the track quality value at a future timestep P(k+1|k) given a track quality value at a current time step bymultiplying a probability of a target existing for the track with thetrack quality value after an update at the current time step.

When the track is associated with a measurement at a future time step,the method can comprise calculating a track quality value P(k+1|k+1) bycalculating a first sum by adding a likelihood that the targetcorresponding to the track exists and the associated measurement is fromthe target with a likelihood that the target exists and the associatedmeasurement is a false alarm, calculating a second sum by adding thefirst sum with a likelihood that the target does not exist and theassociated measurement is a false alarm, and dividing the first sum bythe second sum.

For instance, when the track is associated with a measurement at afuture time step, the method can comprise calculating a track qualityvalue P(k+1|k+1) according to:

${P( {k + 1} \middle| {k + 1} )} = {\frac{1 - {\pi_{d}^{1}( {1 - {\Lambda ( {k + 1} )}} )}}{1 - {{\pi_{d}^{1}( {1 - {\Lambda ( {k + 1} )}} )}{P( {k + 1} \middle| k )}}}{P( {k + 1} \middle| k )}}$

where π_(d) ¹ is a total detection probability inside a detection gatefor the target,

${{\Lambda ( {k + 1} )} = \frac{f( {z( {k + 1} )} \middle| {x( {k + 1} \middle| k )} )}{f( {z( {k + 1} )} \middle|  )}},$

ƒ(z(k+1)|x(k+1|k)) is a likelihood of a measurement z(k+1) given apredicted position of the target x(k+1|k), ƒ(z(k+1)|Φ) is a density offalse alarm at z(k+1) and k is the current time step.

When the track is not associated with a measurement at a future timestep, the method can comprise calculating a track quality valueP(k+1|k+1) by calculating a first sum by adding a likelihood that thetarget corresponding to the track exists and it is not detected with alikelihood that the target does not exist, and dividing the likelihoodthat the target corresponding to the track exists by the first sum.

For instance, when the track is not associated with a measurement at afuture time step, the method can comprise calculating a track qualityvalue P(k+1|k+1) according to:

${P( {k + 1} \middle| {k + 1} )} = {\frac{1 - \pi_{d}^{2}}{1 - {\pi_{d}^{2}{P( {k + 1} \middle| k )}}}{P( {k + 1} \middle| k )}}$

where π_(d) ² is a total detection probability inside the detectiongate.

In another aspect, at least one embodiment described herein provides acomputer readable medium for use in tracking targets, the computerreadable medium comprising program code executable by a processor forimplementing the method described above.

In another aspect, at least one embodiment described herein provides aradar system comprising hardware configured to transmit radar pulses,receive reflected radar pulses, and process the reflected radar pulsesto provide pre-processed radar data; circuitry configured to process thepre-processed radar data to detect targets and generate plots of thedetected targets; and a tracking module configured to receive the plotsand generate tracks belonging to several track lists. For a given track,the tracking module is configured to associate a measurement with thetrack and generate measurement association statistics, generate andupdate a track quality value for the track, and determine which tracklist the track belongs to based on the track quality value and themeasurement association statistics of the track.

BRIEF DESCRIPTION OF THE DRAWINGS

For a better understanding of the various embodiments described hereinand to show more clearly how they may be carried into effect, referencewill now be made, by way of example only, to the accompanying drawingsin which:

FIG. 1 is a block diagram of an exemplary embodiment of a radar system;

FIG. 2 is a block diagram of an exemplary embodiment of a trackingmodule for use in the radar system of FIG. 1;

FIG. 3 is a block diagram of a Markov model that can be used for trackexistence and track quality measures;

FIG. 4 is a flowchart diagram of an exemplary embodiment of a trackgeneration method;

FIG. 5 is a flowchart diagram of an exemplary embodiment of a trackquality calculation method;

FIG. 6 is a flowchart diagram of an exemplary embodiment of atrack-measurement association generation method;

FIG. 7A is a flowchart diagram of an exemplary embodiment of a tracklist update method for an initial track;

FIG. 7B is a flowchart diagram of an exemplary embodiment of a tracklist update method for a confirmed track;

FIG. 7C is a flowchart diagram of an exemplary embodiment of a tracklist update method for an unobservable track;

FIG. 8A is a plot of target paths, sensor location and sensor coveragefor a simulated scenario in which initial target positions are denotedby the symbol ‘x’;

FIG. 8B is a plot of the measurements obtained corresponding to target 1of FIG. 8A in a typical Monte Carlo (MC) run;

FIGS. 8C and 8D are plots of the tracks obtained by a track-qualitybased tracker (described herein) and a fixed logic based tracker,respectively, in a typical MC run;

FIGS. 9A and 9B are plots of tracks obtained from real HFSWR data by atrack-quality based tracker (described herein) and a fixed logic basedtracker, respectively; and,

FIGS. 9C and 9D are plots of tracks in a zoomed area obtained from realHFSWR data by a track-quality based tracker (described herein) and afixed logic based tracker, respectively, in a typical MC run.

DESCRIPTION OF THE EMBODIMENTS

It will be appreciated that for simplicity and clarity of illustration,where considered appropriate, reference numerals may be repeated amongthe figures to indicate corresponding or analogous elements. Inaddition, numerous specific details are set forth in order to provide athorough understanding of the embodiments described herein. However, itwill be understood by those of ordinary skill in the art that theembodiments described herein may be practiced without these specificdetails. In other instances, well-known methods, procedures andcomponents have not been described in detail so as not to obscure theembodiments described herein. Also, the description is not to beconsidered as limiting the scope of the embodiments described herein.

Referring now to FIG. 1, shown therein is a block diagram of anexemplary embodiment of a radar system 10. The radar system 10 includesa controller 12, an antenna 14, a duplexer 16, a transmitter 18 and areceiver 20. The radar system 10 further includes radar data processingmodule 22, a detection module 24, a plot extraction module 26, atracking module 28, a classification module 30 and an output device 32.In alternative embodiments, the radar system 10 may have a differentlayout or configuration, including different components, as is commonlyknown by those skilled in the art. For example, the classificationmodule 30 may be additionally, or optionally, connected to at least oneof the detection module 24 and the plot extraction module 26 to classifydetected targets. This allows target classification to be done atvarious stages of target tracking including during or after detection,plot extraction or track formation. In alternative embodiments, theremay also be an input module (not shown) that can be used to provide anadditional level of control to the radar system 10. Also, the system canemploy separate transmit and receive antenna (in which case the duplexermay not be required.

It should be appreciated that as used herein, the term “module”encompasses elements which may be implemented in either hardware (e.g.circuits, circuit elements and circuit components), software (e.g.computer coded being executed by a processor), and/or firmware or whichmay be implemented with any combination of hardware, software and/orfirmware.

The controller 12 controls the activity of the radar system 10 andalthough connections are shown only to the transmitter 18 and thereceiver 20, it is understood that the controller 12 can provide controlsignals to other components of the radar system 10. In general, thecontroller 12 provides control signals to the transmitter 18 forgenerating radar pulses to be transmitted via the antenna 14. Thecontroller 12 also provides control signals to the receiver 20 forreceiving return radar signals due to reflections of the transmittedradar pulses. The controller 12 can also control the duplexer 16 toallow either the transmitter 18 or the receiver 20 to be connected tothe antenna 14 for transmitting or receiving signals. The controller 12can then direct the activities of the remaining components of the radarsystem 10 to process the received return radar signals and provideinformation on any detected targets. It should be appreciated thatalthough the controller 12 is depicted as an entity separated from thetransmitter and receiver, in some systems the circuits, which providethe controller function are provided as part of the transmitter and/orreceiver and timing and control signals are directly coupled between thetransmitter and receiver.

The radar system 10 can employ any suitable type of antenna 14, duplexer16, and transmitter 18 known to those skilled in the art. The antenna 14can be a scanning antenna, a phased array antenna, or any other suitableantenna. The transmitter 18 can be a solid-state transmitter, a tubetransmitter, or any other suitable transmitter. Various waveforms can beused for generating the transmitted radar pulses such as simpleunmodulated waveforms, modulated complex waveforms such as nonlinear FMwaveforms as well as other suitable waveforms transmitted in a simplexfrequency, dual frequency or other suitable fashion as is commonly knownby those skilled in the art. A variable pulse repetition frequency (PRF)may also be used across different coherent processing intervals (CPIs)to combat the blind speed problem. However, a constant PRF acrossdifferent CPIs can also be used.

After the radar pulses are transmitted by the transmitter 18, the returnradar signals (i.e. reflections of the transmitted radar pulses) arereceived by the antenna 14 and processed by the receiver 20. Thereceiver 20 typically includes analog and digital circuitry, such as oneor more filters, amplifiers, and mixers, and an analog to digitalconverter. These elements perform filtering, amplification,down-conversion (i.e. demodulation to a lower frequency band) andprovide pre-processed digital radar data as is commonly known by thoseskilled in the art. Filtering removes extraneous unwanted signals in thereturn radar signals. In some cases, heterodyning can be used todemodulate the filtered data from the radio frequency (RF) band to anintermediate frequency (IF) band where analog to digital conversion cantake place.

The radar data processing module 22 is typically implemented using adigital signal processor, as can several of the other components shownin FIG. 1. The radar data processing module 22 further processes thepre-processed digital radar data to generally providerange-Doppler-azimuth radar data. The processing performed by the radardata processing module 22 depends upon the hardware associated with theradar system 10. Generally, the radar data processing module 22 canperform demodulation to the baseband, low-pass filtering anddownsampling. In one exemplary implementation, the radar data processingmodule 22 performs matched filtering by employing one or more matchedfilters that have a transfer function or impulse response that ismatched to the transmitted radar pulses. The data from the matchedfilter(s) is then separated into CPIs for analysis in which the data isrange-aligned and beamformed to provide the range-azimuth data. Therange information in the range-azimuth data provides an estimate of apossible target's distance from the radar system 10. The azimuthinformation in the range-azimuth data provides an estimate of the angleof the possible target's location with respect to the center of theantenna 14. The radar data processing module 22 can then apply Dopplerfiltering to the range-azimuth data to produce range-Doppler-azimuthdata. The Doppler information in the range- Doppler-azimuth dataprovides an estimate of a possible target's radial velocity by measuringthe possible target's Doppler shift, which is related to the change infrequency content of a given radar pulse that is reflected by thepossible target with respect to the original frequency content of thegiven radar pulse. Those skilled in the art are generally familiar withthe processing performed by the radar data processing module 22, theorder in which the different stages of the processing can be performed,as well as how these different stages of processing can be implemented.It may not be necessary to perform each of these stages of processing,since one or more of these operations may be performed by differentmodules to enhance performance, e.g. the detection module 24 canimplement a certain method to enhance detection. In other words, theradar data processing module 22 processes the pre-processed radar datato provide radar data that is typically some combination of range,azimuth and Doppler data.

The detection module 24 then locates candidate targets from the radardata provided by the radar data processing module 22. Various techniquescan be used for detection as is commonly known by those skilled in theart. For instance, various types of constant false alarm rate (CFAR)techniques can be used. Further noise reduction may be performed by thedetection module 24 to enhance detection, which can include theapplication of clutter maps to reduce the effect of clutter. In at leastsome cases, one or a combination of binary integration and videointegration can also be used. Second time around target suppression canalso be used.

The plot extraction module 26 receives and combines the candidatetargets to form plots through a process known as plot extraction. Theplot extraction module 26 filters the candidate targets to reject all ofthose candidate targets that do not conform to the certain values thatare expected for certain properties of a particular type of target suchas, but not limited to, aircraft targets.

The tracking module 28 receives the plots (in the form of a stream ofdigital bits) and generates tracks by accounting for the temporalvariation of measurement information for candidate targets for asequence of plots. More specifically, the tracking module 28 analyzes asequence of plots and associates successive detections of a candidatetarget to form a track for the candidate target. Accordingly, thetracking module 28 determines the movement of the candidate targetsthrough a given surveillance area. An exemplary embodiment of thetracking module 28 is described in more detail below.

The classification module 30 receives the tracks generated by thetracking module 28 and analyzes the tracks by measuring values forcertain features of the tracks in order to classify the tracks asbelonging to various different categories such as aircraft, birds,ground and weather clutter, environmental or geographical interference,etc. Another classifier may be trained for particular aircraft ornon-aircraft targets and applied to the output of the classificationmodule 30 to extract particular targets from aircraft or non-aircraftoutputs. For instance, the non-aircraft class can be expanded to includebirds, windmills, AP, etc. The aircraft class can be expanded to includehelicopters, unmanned aerial vehicles (UAV), light aircrafts, etc.Alternatively, the classification module 30 may be trained to identifyeach of these sub-classes of the aircraft and non-aircraft classes.

The output device 32 can provide information on the targets that arebeing tracked by the radar system 10. The output device 30 can be amonitor, a printer or other suitable output means. The output device 32can receive classified tracks from the classification module 30 andprovide output information on the classified tracks. In otherembodiments, the output device 32 can receive information from othercomponents of the radar system 10 and output this information.

The tracking module and processing performed thereby will be describedin detail below in conjunction with FIGS. 2-9D. Briefly, however, thetracking module 28 uses an assignment-based method for data association(i.e. associating measurements to tracks) and calculates a track qualitymeasure for the tracks that is used in track maintenance. The trackingmodule 28 incorporates measurement-to-track association likelihoods inthe track quality measure by considering the possible detection eventsin whether or not the corresponding track is updated at the current timestep. Generally, the likelihoods incorporate the target detectionprobability for a given sensor-target geometry and a corresponding falsealarm density. In general, measurement-to-track association likelihood,and hence the track quality, is relatively small for false trackscompared to true tracks, and therefore aids in discriminating truetracks from false tracks.

The tracking module 28 also uses various rules for separating tracksinto various lists, moving tracks between these lists, and terminatingtracks from these lists. These rules are based, at least in part, on thetrack quality of the tracks, and measurement association statistics,which can include a length of no measurement association sequence and atotal number of updates. These are described in further detail below.Each of the track lists can be updated separately.

Generally, the tracking module 28 determines that track quality ishigher if the track is more frequently associated with measurements andif it has higher measurement association likelihood values, which arerelatively high compared with measurement association likelihood valuesof other tracks. The tracking module 28 can be configured to confirm atrack with a higher track quality faster, and to retain such a tracklonger when there are no measurements that are associated with the trackover a number of successive scans (i.e. successive plots). Conversely,the tracking module 28 can use a stricter track to measurementassociation criteria for tracks that have not been updated in the recentpast; these tracks are referred to as unobservable tracks. The maindifficulty with retaining an unobservable track is that its region ofuncertainty increases as the sampling time increases. This may lead toassociations of an unobservable track with measurements from the othertargets and/or false measurements. To avoid such a situation, trackswith a high value of track quality, which have not been associated witha measurement for more than n_(na) scans, are moved to the group ofunobservable tracks. The tracks in this list are given lower precedencethan confirmed tracks. However, an unobservable track can be moved backto the set of confirmed tracks if it is associated with n_(a)measurements after it was first moved to the list of unobservable tracksand maintained a certain level of track quality while it was in the listof unobservable tracks.

To further address the issue of associating measurements from othertargets and/or false measurements with a given track, the trackingmodule 28 groups tracks into different lists and associates them withmeasurements in a particular order. The tracks are grouped into thedifferent lists based upon their track quality, and measurementassociation statistics (i.e. length of no measurement associationsequence and total number of updates). The lists include a list ofinitial tracks, a list of confirmed tracks and a list of unobservabletracks. The confirmed tracks are associated with measurements first.Next, the unobservable tracks, which are typically tracks having a longsequence of no detections, but are still retained, are associated withthe remaining measurements. Finally, the initial tracks are associatedwith the remaining measurements. To reduce the possibility of falsemeasurement associations with unobservable tracks, the associations canbe made only after the unobservable track is associated with a certainnumber of measurements.

Referring now to FIG. 2, shown therein is a block diagram of anexemplary embodiment of the tracking module 28. The tracking module 28includes a track initiator 50, a track association module 52, a trackquality module 54 and a track list update module 56. The track initiator50 receives the plot information of candidate targets from the plotextraction module 26 and generates preliminary tracks. Initially, alltracks can be placed in the list of initial tracks. The trackassociation module 52 associates measurements to each of these tracksand generates the measurement association statistics. The measurementassociation statistics include information related on the association ofmeasurements to a particular track. For instance, for a given track, themeasurement association statistics can include the number of measurementassociations for the track, the length of no associations for a givenpast number of time steps (i.e. no associations for a consecutive numberof past time steps), and the like. The number of consecutive noassociations is calculated until the track is next associated with ameasurement or the track is deleted. The track quality module 54calculates the track quality values for the tracks. The track listupdate module 56 then updates each list of tracks by deciding whethereach track should be kept within its present list or moved to anotherlist or dropped altogether. The tracking module 28 can provide each listof tracks along with associated information to the classification module30. Alternatively, the tracking module 28 may provide only the list ofconfirmed tracks to the classification module 30.

Referring now to FIG. 3, shown therein is a flowchart diagram of anexemplary embodiment of a track generation method 100. At step 102, thetracking module 28 has just begun operation and initial tracks aregenerated. A given initial track is generated by connecting measurementsof the same candidate target for successive plots that are provided bythe plot extraction module 26. These initial tracks can be generated tohave a certain number of points, which is a tuned value depending uponperformance requirements such as false track rate, the time needed toinitialize a track, etc. The number of points required can also bedecided by striking a balance between false track confirmation andmis-detection of tracks. At step 104, the measurements are associatedfor each track and the measurement association statistics arecalculated. The measurement information can include the range, azimuth,Doppler, and target amplitude information for a possible target. Othertypes of information can be incorporated into the measurementinformation as is commonly known by those skilled in the art. At step106, the track quality for each track is calculated. At step 108, thetrack lists are updated by moving tracks between the various track listsif needed. At step 110, if tracking is no longer required, then themethod 100 ends; otherwise the time step is increased at step 112, andthe method 100 goes to step 104.

For a track, the track quality is defined as the probability that atarget corresponding to the track exists. The target corresponding tothe track comes into existence at a particular time and it ceases toexist at a random time after its birth. The corresponding Markov chainmodeling this situation is shown in FIG. 4. It is assumed that if atarget exists it is detectable, although the probability of detectionmay vary from target to target. As shown in FIG. 4, p₁₁ is theprobability that the target stays in the “exists” state during a singletime step, p₁₂ is the transition probability of a transition from the“target exists” state to the “target does not exist” state in a singletime step, and p₂₂ is equal to 1 which means that if the target is inthe “target does not exists” state then it remains there.

If the variable P(k|k) denotes the track quality at the current timestep k after an update (i.e. after it is determined whether ameasurement is associated with the track), then following the abovemodel, the predicted track quality at time step k+1 is given by:

P(k+1|k)=p ₁₁ P(k|k)   (1)

The probability value p₁₁ is a constant that is related to performancerequirements that are specified for the tracking module 28. Also, thisconstant is tuned before operation depending upon the site where theradar system 10 is installed using techniques that are commonly known tothose skilled in the art. The value P(k|k) is related to sensor accuracyand other sensor related parameters and can be initialized by using theinitial probability of target existence equation which is known to thoseskilled in the art. At the update stage, two events are possible for thetrack:

-   -   1) the track is associated with a measurement at time step k+1        (event A₁) or    -   2) the track is not associated with a measurement at time step k        +1 (event A₂).

If event A₁ is observed at time step k+1, then it is assumed that thereare three possibilities to consider:

-   -   i) the target corresponding to the track exists and the        associated measurement is from the target (event A₁₁),    -   ii) the target exists but the associated measurement is a false        alarm (event A₁₂), and    -   iii) the target does not exist and the associated measurement is        a false alarm (event A₁₃ ).        The above events A₁₁,A₁₂,A₁₃ are exclusive and are assumed to be        exhaustive. For convenience, the other possible events, which        consider that the associated measurement is from another target,        are not considered.

Since an assignment based track maintenance method assigns a measurementto a track that is the global nearest neighbor (GNN) of the track, thedistance between a track and its GNN measurement defines the detectiongate in the case of event A₁. Multiple hypothesis or multiple framealgorithms can be used to further improve the tracking performance.Alternatively, the Suboptimal Nearest Neighbor (SNN) method can be used.This method is easier to implement than the GNN and it has lowercomputational complexity. However, it may cause performance degradation,particularly, in dense target scenarios. The total detection probabilityinside this gate is represented by π_(d) ¹ (i.e. assuming event A₁).Note that the total target detection probability is the product of theprobability of detection and the probability that the detection isinside the gate. If ƒ(z(k+1)|x(k+1|k)) denotes the likelihood of themeasurement z(k+1) given the predicted position of the target x(k+1|k),then the likelihood of event A₁₁ (given event A₁) is given by:

l(A ₁₁)=π_(d) ¹ƒ(z(k+1)|x(k+1|k))P(k+1|k)   (2)

Next the event A₁₂ is considered. The likelihood that the track existsand the measurement is a false alarm is given by:

l(A₁₂)=(1−π_(d) ¹)ƒ(z(k+1|Φ)P(k+1|k)   (3)

where ƒ(z(k+1Φ) is the density of false alarm at z(k+1).

Following the above discussion, the likelihood of event A₁₃ is given by:

l(A ₁₃)=ƒ(z(k+1|Φ)(1−P(k+1|k))   (4)

Ideally, the set of events A₁₁,A₁₂,A₁₃ is an exhaustive set given eventA₁. In some practical embodiment, however, this may not be true—i.e. theset of events A₁₁,A₁₂,A₁₃ may not be an exhaustive set given event A₁.It should be appreciated, however, that the more complete the set ofevents, the more accurate the computation of the likelihood value andother values. Since the existence of the target is supported by eventsA₁₁ and A₁₂, the updated track quality for event A₁ is given byequations 5 and 6 for event A₁.

$\begin{matrix}\begin{matrix}{{P( {k + 1} \middle| {k + 1} )} = \frac{{l( A_{11} )} + {l( A_{12} )}}{{l( A_{11} )} + {l( A_{12} )} + {l( A_{13} )}}} \\{= \frac{1 - {\pi_{d}^{1}( {1 - {\Lambda ( {k + 1} )}} )}}{1 - {{\pi_{d}^{1}( {1 - {\Lambda ( {k + 1} )}} )}{P( {k + 1} \middle| k )}}}} \\{{P( {k + 1} \middle| k )}}\end{matrix} & (5) \\{{\Lambda ( {k + 1} )} = \frac{f( {z( {k + 1} )} \middle| {x( {k + 1} \middle| k )} )}{f( {z( {k + 1} )} \middle|  )}} & (6)\end{matrix}$

The parameter π_(d) ¹ is a constant that depends upon performancespecifications and the location of the radar system 10; those skilled inthe art know how to calculate a value for this parameter. There aredifferent ways to calculate the parameters ƒ(z(k+1)|x(k+1|k)) andƒ(z(k+1|Φ). The first parameter can be obtained from tracking filtercomputed track update error statistics and measurement error statistics.The second quantity is the density of false plots and can be computedfrom measurements that are not associated with tracks in any stage.

If the track is not associated with a measurement (event A₂), i.e.,there are no measurements in the detection gate, the track quality isupdated as follows. Note that in this case it is possible that there isa measurement in the detection gate that is associated with anothertrack. This possibility is neglected for convenience. In the case ofevent A₂, two possibilities can be considered:

-   -   i) the target corresponding to the track exists and it is not        detected (event A₂₁), and    -   ii) the target does not exist (event A₂₂).

The first event can occur if there is no detection from the target andno false alarm inside the detection gate. The total target detectionprobability inside the detection gate is represented by π_(d) ².Furthermore, the probability of no false alarm in gate is represented byπ₁₀₀. The likelihood of event A₂₁ is then given by:

l(A ₂₁)=(1−π_(d) ²)π₁₀₀ P(k+1|k)   (7)

Similarly the likelihood of event A₂₂ is given by:

l(A ₂₂)=π_(φ()1−P( 30 1|k))   (8)

Considering that track existence is supported by the first event only,the updated track quality for event A₂ is given by:

$\begin{matrix}\begin{matrix}{{P( {k + 1} \middle| {k + 1} )} = \frac{l( A_{21} )}{{l( A_{21} )} + {l( A_{22} )}}} \\{= {\frac{1 - \pi_{d}^{2}}{1 - {\pi_{d}^{2}{P( {k + 1} \middle| k )}}}{P( {k + 1} \middle| k )}}}\end{matrix} & (9)\end{matrix}$

The parameter π_(d) ² is a constant that depends upon performancespecifications and the location of the radar system 10; those skilled inthe art know how to calculate a value for this parameter.

The track quality module 54 can calculate the track quality values forevents A₁ and A₂ according to equations 5 or 6 and 9 respectively. Ascan be seen, for both events A₁ and A₂ the track quality is based upontarget detection (includes the probability of existence of a target fora track), and measurement association for the track and thecorresponding target.

Referring now to FIG. 5, shown therein is a flowchart diagram of anexemplary embodiment of a track quality calculation method 120 forcalculating the track quality for a track. At step 120, the track isinitialized based on a certain number of time steps i (i.e. measurementassociations) using a suitable track initialization method (describedbelow). At step 124, the track quality P(k+1|k) is predicted from P(k|k)using equation 1. At step 126, the measurement association occurs fortime step k+1. At step 128, it is determined whether the track wasassociated with a measurement. If so, the method 120 goes to step 130where the track quality P(k+1|k+1) is calculated using P(k+1|k) andequations 5 and 6. Otherwise, the method 120 goes to step 132 where thetrack quality P(k+1|k+1) is calculated using P(k+1|k) and equation 9. Atstep 134, the track quality P(k+1|k+1) for the track is stored. At step136, the time step is incremented and the method 120 goes to step 124.This cycle repeats until the track is terminated. This cycle can berepeated for each track.

Referring now to FIG. 6, shown therein is a flowchart diagram of anexemplary embodiment of a track-measurement association method 150. Thecurrent tracks are generally divided into three different categories:initial tracks, confirmed tracks, and unobservable tracks. The trackingmodule 28 implements a multilayer association technique in the sensethat higher layered tracks (i.e. confirmed tracks) are tracks with ahigher priority and are associated with measurements first so that thesetracks have a better chance to survive. The track quality initially setsa track's priority level. However, a track's layer or priority level canchange over time due to updated track quality and other statistics. Thetrack quality will be updated based on events A₁ and A₂. The preliminarytracks that are not yet confirmed are denoted as initial tracks.Accordingly, when the tracking module 28 first starts operating andgenerates the preliminary tracks, these tracks are grouped with the listof initial tracks. After confirmation, a track is denoted as a confirmedtrack and is grouped with the list of confirmed tracks. The list ofunobservable tracks is as described before and a track is grouped inthis list based on certain rules as will be described.

At step 152, the confirmed tracks are updated using the measurementsfrom the current measurement list (i.e. at time step k). This is a newmeasurement list based upon the current radar scan. A confirmed track isupdated by associating one of the measurements from the measurement listto the track. This measurement association can be done based on theauction method (i.e. 2-D assignment). Alternatively, depending uponoperational circumstances and performance criteria, other types ofmeasurement association methods may be used such as, but not limited to,the Hungarian, Munkres, Jonker-Volgenant-Castanon (JVC), RELAX II,signature methods. These methods are known to those skilled in the art.The measurement list is then updated at step 154 by removing themeasurements that were associated to the confirmed tracks to produce thefirst updated measurement list.

At step 156, the measurements from the first updated list are thenassociated with the unobservable tracks. This measurement associationcan also be done using the auction method (i.e. 2-D assignment) or theother methods as noted above. At step 158, the first measurement list isupdated by removing the measurements associated with the unobservabletracks to produce the second updated measurement list.

At step 160, the measurements from the second updated list at thecurrent time step k and the third updated measurement list from theprevious scan (at time step k−1) are associated with preliminary tracksto obtain initial tracks. A two-point track initialization method can beused in this association to obtain a new list of initial tracks. Trackscan be initialized from active and passive measurements using a numberof sets of scan information. The two-point track initialization methoduses two sets of scans of active measurements to initiate tracks. Atstep 162 the measurements associated with the initial tracks are removedfrom the third updated measurement list at the current time step k. Thismeasurement list will become the “third updated measurement at time stepk−1” for the next iteration of this method (i.e. at time step k+1). Thecurrent version of the third updated measurement list for the previoustime step k−1 may still be retained; for instance, if N step trackinitialization is used, third updated measurements lists from N−1previous time steps will be retained.

At step 164, the lists of tracks are updated, i.e. tracks can beexchanged among the sets. This can be done according to various rules asdescribed below with reference to FIGS. 7A-C. A track state is updatedonly if it is associated with a measurement. The track state is acombination of all track information including target position, targetspeed, target strength, track quality, history, number of misses, numberof updates, track layer, measurement association statistics and thelike. However, the track quality and track layer (i.e. track priority)are updated for all tracks irrespective of whether it is associated withmeasurement or not at the current time step. At step 166, the time stepis incremented and the method 150 is performed again.

Referring now to FIG. 7A, shown therein is a flowchart diagram of anexemplary embodiment of a track list update method 200 for an initialtrack. At step 202, an initial track is selected for the current timestep k. At step 204, the track quality for this selected initial trackis compared with track quality threshold q_(mi). If the track qualityfor the selected initial track is lower than the track quality thresholdq_(mi), the selected initial track is removed from the list of initialtracks at step 206 and deleted. Otherwise, at step 208, it is determinedwhether the measurement association statistics indicate that the numberof associations for the selected initial track (for the entire lifetimeof the track) is greater than or equal to n_(i), and the track qualityvalues for the last two time steps are greater than q_(ma), for theselected initial track. If both of these conditions are true, then atstep 210 the selected initial track is considered to be a confirmedtrack and is assigned to the list of confirmed tracks for time step k+1.Otherwise, if at least one of the conditions in step 208 is not true,then at step 212 the selected initial track is maintained as an initialtrack and is retained in the list of initial tracks for time step k+1.

Referring now to FIG. 7B, shown therein is a flowchart diagram of anexemplary embodiment of a track list update method 250 for a confirmedtrack. At step 252, a confirmed track is selected from the list ofconfirmed tracks for the current time step k. At step 254, the trackquality of the selected confirmed track is compared to a track qualitythreshold q_(mc). If the track quality of the selected confirmed trackis smaller than the track quality threshold q_(mc), then the selectedconfirmed track is considered to be a dead track and is deleted.Otherwise, the method 250 proceeds to step 258 at which point it isdetermined if the measurement association statistics for the selectedconfirmed track indicate that there has not been any measurementassociations in the last n_(na) time steps. If this is true, then atstep 260 the selected confirmed track is considered to be anunobservable track and is moved to the list of unobservable tracks fortime step k+1. Otherwise, at step 262, the selected confirmed track ismaintained as a confirmed track and retained in the list of confirmedtracks for time step k+1.

Referring now to FIG. 7C, shown therein is a flowchart diagram of anexemplary embodiment of a track list update method 300 for anunobservable track. At step 302, an unobservable track is selected fortime step k. At step 304, the track quality of the selected unobservabletrack is compared to the track quality threshold q_(mc). If the trackquality of the selected unobservable track is smaller than the trackquality threshold q_(mc), then the selected confirmed track isconsidered to be a dead track and is deleted. Otherwise, at step 308 itis determined whether the measurement association statistics for theselected unobservable track indicates that the number of newassociations since this track was first denoted as an unobservable trackis greater than or equal to n_(a) and if the track quality of theselected unobservable track is greater than the track quality thresholdq_(ma). If both of these conditions are true, then at step 310 theselected unobservable track is considered to be a confirmed track andassigned to the list of confirmed tracks for time step k+1. If at leastone of these conditions is not true, then at step 312 the selectedunobservable track is maintained as such and retained in the list ofunobservable tracks for time step k+1.

The performance of the tracking module 28 and a fixed logic tracker wastested on a simulated scenario and a real data set from High FrequencySurface Wave Radar (HFSWR). An Interacting Multiple Model (IMM)estimator (Bar-Shalom et al., Multitarget-Multisensor Tracking:Principles and Techniques, YBS Publishing, © 1995, pp. 453-484.), whichjoins two Kalman filters assuming discretized continuous-time whitenoise acceleration with standard deviation 0.0025 m/s^(3/2) and 0.025m/s^(3/2), respectively, was used for track maintenance. The auctionalgorithm (2-D assignment) (Bertsekas, Linear Network Optimization:Algorithms and Codes, MIT Press, Cambridge, Mass. USA, © 1991) is usedfor data association. The IMM estimator and the auction algorithm areboth used for the track quality based tracker and the fixed logictracker. However, a different procedure is followed in these trackers toupdate their track lists. The fixed logic tracker uses measurementassociation statistics to perform this step. While, the tracking module28 also uses track quality information. The original positionmeasurements are in the form of range and azimuth angle in the presenceof noise, which are converted to an (x, y) position using the standardconversion (Bar-Shalom et al., Multitarget-Multisensor Tracking:Principles and Techniques, YBS Publishing, © 1995.). As shown by Yeom etal. (“Track segment Association, Fine-step IMM and Initialization withDoppler for Improved Track Performance”, IEEE Trans. on Aerospace andElectronic Systems, Vol. 40, No. 1, pp. 293-309, January, 2004.), theobserved azimuth angle is used to allow a linear model for the rangerate measurement. A two-point track initialization is used to obtain theinitial tracks. The tracker assumes a probability of detection of 0.8and uniformly distributed false alarm with an average 200 per scan.

A fixed logic based algorithm, in which the track confirmation andtermination decisions are made solely based on the total number ofmeasurement associations and the length of a no association sequence, isimplemented to compare the performance with the quality based trackingmodule 28. In the fixed logic based tracker, an initial track isconfirmed if it is associated with at least 5 measurements and aconfirmed track is terminated if it is not detected in 10 consecutivescans.

FIGS. 8A-9D are a series of plots. The radar has a surveillance coverageby range & azimuth sector, which is not a square area. Thus, differentscales among the plots on FIGS. 8A-9D are use to fully display tracks ortrack segments. The distances shown on the axis are distances from theradar system (i.e., the radar is the coordinate system origin).

Referring now to FIG. 8A, shown therein is a plot of target paths,sensor location and sensor coverage for a simulated exemplary scenarioin which initial target positions are denoted by x. In the simulatedscenario, 5 targets are considered. Each target performs at least onecoordinated turn. The maximum turn rate is 0.1 degrees/s and the minimumturn rate is 0.05 degrees/s. The speed of the targets varies from 2 m/sto 10 m/s. The maximum and minimum linear accelerations are 0.017 m/s²and 0.0035 m/s², respectively. An HFSWR is simulated which measuresrange, azimuth angle and range rate. The minimum and maximum range ofthe sensor are 15 km and 200 km, respectively. The accuracies of thesensor are as follows: the range estimation error standard deviation is1 km, the azimuth angle estimation error standard deviation is 0.01 radand the range rate estimation error standard deviation is 0.8 m/s. Thesampling interval of the sensor is 100 s. The number of false alarmscorresponding to the sensor per scan is Poisson distributed with a meanof 200. The false alarms are uniformly and independently distributed inrange, azimuth angle and range rate. As a result the false alarm densityis higher at lower values of the range.

Real data from HFSWR radar shows that occasionally a target may not bevisible for a number of scans. To include this possibility in thesimulation, the detection event is considered to be the result of twoprocesses. At each scan, the first process can start a sequence ofmissed detections corresponding to a target with a probability of 0.05.The length of each missed detection sequence is a Poisson randomvariable with an average of 8. In any scan, if a missed detectionsequence is not active for a particular target it can still be missedwith probability of 0.15. FIG. 8B shows a plot of the measurementsobtained corresponding to target 1 in a typical Monte Carlo (MC) run.Multiple missed detection sequences can be observed in this figure.

Referring now to FIGS. 8C and 8D, shown therein are plots of the tracksobtained by the track-quality based tracking module 28 and the fixedlogic based tracker, respectively, in a typical MC run. It can be seenthat in a number of instances tracks obtained by the tracking module 28have better continuity. The fixed logic based tracker loses tracks moreoften and as a result needs to restart the track more often. Thisresults in lower RMSE performance.

Table 1 shows performance metrics for the two trackers obtained byaveraging over 100 MC runs. It can be seen that the track quality-basedtracking module 28 performs better in all cases. Considerable success isachieved particularly in increasing the percentage of target trajectorytracks and in reduction of the average false track lifetime. This showsthat the tracking module 28 improves track continuity and at the sametime decreases average false track length.

TABLE 1 100 MC run average of the performance metrics corresponding totrack quality based and fixed logic based trackers Avg. Detection % ofPos'n Velocity false Avg. false delay traj. RMSE RMSE track track lifeMethod (min) tracked (m) (m/s) no./run (min) Track 9.52 82.4% 939.6 2.371.61 14.02 Quality Fixed 10.78 74.3% 982.4 3.04 1.94 24.17 Logic

The tracking module 28 and the fixed logic based tracker are alsoapplied to a real data set from an HFSWR. FIGS. 9A and 9B shows thetracks obtained by the tracking module 28 and the fixed logic basedtracker respectively. It can be seen that the fixed logic based trackerexclusively obtains some short tracks that appear to be false tracks.FIGS. 9C and 9D zoom into a part of the surveillance region for theresults obtained by the tracking module 28 and the fixed logic basedtracker respectively. It can be seen that the tracks with track IDs 2,19, and 28 obtained by the tracking module 28 are continued while thecorresponding tracks obtained by the fixed logic based tracker arebroken. Table 2 shows that there is significant improvement (up to 40%)in the average track-life for the tracking module 28.

TABLE 2 Comparison of the performance of track-quality based andfixed-logic based trackers Number Average Data of number of Average Run-Set Tracker Tracks associations track-life time 1 Track-quality 49 46.44 hr. 43 min.  78 sec. based Fixed logic 57 40.3 3 hr. 58 min.  86 sec.based 2 Track-quality 41 59.1 5 hr. 49 min.  43 sec. based Fixed logic54 46.1 4 hr. 25 min.  47 sec. based 3 Track-quality 364 33.1 2 hr. 5min. 187 sec. based Fixed logic 453 26.7 1 hr. 30 min. 132 sec. based 4Track-quality 313 32.8 1 hr. 49 min. 286 sec. based Fixed logic 398 26.61 hr. 18 min. 168 sec. based 5 Track-quality 194 71.7 4 hr. 41 min. 170sec. based Fixed logic 246 56.4 3 hr. 34 min. 172 sec. based

In general, the results show that the tracking module 28 achievessignificant track life improvement and false track rejection over thefixed logic based tracker. The results show that the tracking module 28can decrease the average false track length and extend the track lifesignificantly in scenarios where the probability of track detection islow. Furthermore, the number of false tracks does not increase with thetracking module 28 even if the clutter density is high.

The elements of the radar system 10 described herein may be implementedthrough any means known in the art including dedicated hardware like adigital signal processor that executes computer instructions.Alternatively, discrete components such as filters, comparators,multipliers and the like may also be used. Furthermore, thefunctionality of certain blocks in the radar system 10 may be providedby the same structure. If computer instructions are used for any of thecomponents of the radar system 10, they may be written in Matlab, C,C⁺⁺, Labview™ or any suitable programming language embodied in acomputer readable medium on a computing platform having an operatingsystem and the associated hardware and software that is necessary toimplement the functionality of these components. The computerinstructions can be organized into modules or classes, as is known tothose skilled in the art, that are implemented and structured accordingto the structure of the components described herein such as the trackingmodule 28.

It should be noted that values for the various thresholds and parametersused in the tracking module 28 can be affected by the location of theradar system 10. Accordingly, one method for determining values forthese thresholds and parameters can be based on operating the trackingmodule 28 based on real data, selecting various values for theseparameters and thresholds and determining which values provide the bestperformance. In fact, it is well known to those skilled in the art thatit is a well-known practice to routinely perform site optimization toselect values for thresholds and operating parameters for components ofa radar system.

It should be understood that various modifications can be made to theembodiments described and illustrated herein, without departing from theembodiments, the general scope of which is defined in the appendedclaims.

1. A tracking module for tracking a detected target, the tracking modulecomprising: a track association module configured to associate ameasurement with a track and generating measurement associationstatistics for the track; a track quality module configured to generateand update a track quality value for a track based on ameasurement-to-track association likelihood; and a track list updatemodule configured to update track lists based on the track quality valueand the measurement association statistics of the tracks in these lists.2. The tracking module of claim 1, wherein the track lists comprise alist of initial tracks, a list of confirmed tracks, and a list ofunobservable tracks.
 3. The track module of claim 2, wherein thetracking module comprises a track initiator configured to generate apreliminary version of the track.
 4. The tracking module of claim 3,wherein, for a current time step, the track association module isconfigured to associate measurements from a measurement list with thelist of confirmed tracks, then the list of unobservable tracks, and thenthe list of initial tracks.
 5. The tracking module of claim 3, wherein,for a current time step, the track association module is configured toassociate measurements from a measurement list with the list ofconfirmed tracks and remove the associated measurements from themeasurement list to generate a first updated measurement list, thenassociate measurements from the first updated measurement list with thelist of unobservable tracks and remove the associated measurements fromthe first updated measurement list to generate a second updatedmeasurement list, then associate measurements from the second updatedmeasurement list and a third updated measurement list corresponding to aprevious time step with the list of initial tracks and remove theassociated measurements from the second updated measurement list togenerate a third updated measurement list.
 6. The tracking module ofclaim 3, wherein the track list update module is configured to processthe list of initial tracks by deleting the initial tracks with a trackquality value less than a first track quality threshold.
 7. The trackingmodule of claim 6, wherein the track list update module is configured tomove a remaining initial track to the list of confirmed tracks if theremaining initial track has a track quality value at the current timestep and a track quality value at a previous time step that are bothgreater than a second track quality threshold, and measurementassociation statistics that indicate a number of associations greaterthan or equal to n_(i) where n_(i) is an integer.
 8. The tracking moduleof claim 3, wherein the track list update module is configured toprocess the list of confirmed tracks by deleting the confirmed trackswith a track quality value less than a third track quality threshold. 9.The tracking module of claim 8, wherein the track list update module isconfigured to move a remaining confirmed track to the list ofunobservable tracks if the measurement association statistics of theremaining confirmed track indicates no measurement associations in thelast n_(na) time steps where n_(na) is an integer.
 10. The trackingmodule of claim 3, wherein the track list update module is configured toprocess the list of unobservable tracks by deleting the unobservabletracks with a track quality value less than a third track qualitythreshold.
 11. The tracking module of claim 10, wherein the track listinteraction module is configured to move a remaining unobservable trackto the list of confirmed tracks if the remaining unobservable track hasa track quality value greater than a second track quality threshold andmeasurement association statistics that indicate a number of newassociations greater than or equal to na where na is an integer.
 12. Thetracking module of claim 3, wherein the track quality module isconfigured to predict the track quality value at a future time stepP(k+1|k) given a track quality value at a current time step bymultiplying a probability of a target existing for the track with thetrack quality value after an update at the current time step.
 13. Thetracking module of claim 12, wherein when the track is associated with ameasurement at a future time step, the track quality module isconfigured to calculate a track quality value P(k+1|k+1) by calculatinga first sum by adding a likelihood that the target corresponding to thetrack exists and the associated measurement is from the target with alikelihood that the target exists and the associated measurement is afalse alarm, calculating a second sum by adding the first sum with alikelihood that the target does not exist and the associated measurementis a false alarm, and dividing the first sum by the second sum.
 14. Thetracking module of claim 12, wherein when the track is associated with ameasurement at a future time step, the track quality module isconfigured to calculate a track quality value P(k+1|k+1) according to${P( {k + 1} \middle| {k + 1} )} = {\frac{1 - {\pi_{d}^{1}( {1 - {\Lambda ( {k + 1} )}} )}}{1 - {{\pi_{d}^{1}( {1 - {\Lambda ( {k + 1} )}} )}{P( {k + 1} \middle| k )}}}{P( {k + 1} \middle| k )}}$where π_(d) ¹ is a total detection probability inside a detection gatefor the target,${{\Lambda ( {k + 1} )} = \frac{f( {z( {k + 1} )} \middle| {x( {k + 1} \middle| k )} )}{f( {z( {k + 1} )} \middle|  )}},$ƒ(z(k+1)|x(k+1|k)) is a likelihood of a measurement z(k+1) given apredicted position of the target x(k+1|k), ƒ(z(k+1)|Φ) is a density offalse alarm at z(k+1) and k is the current time step.
 15. The trackingmodule of claim 12, wherein when the track is not associated with ameasurement at a future time step, the track quality module isconfigured to calculate a track quality value P(k+1|k+1) by calculatinga first sum by adding a likelihood that the target corresponding to thetrack exists and it is not detected with a likelihood that the targetdoes not exist, and dividing the likelihood that the targetcorresponding to the track exists by the first sum.
 16. The trackingmodule of claim 12, wherein when the track is not associated with ameasurement at a future time step, the track quality module isconfigured to calculate a track quality value P(k+1|k+1) according to:${P( {k + 1} \middle| {k + 1} )} = {\frac{1 - \pi_{d}^{2}}{1 - {\pi_{d}^{2}{P( {k + 1} \middle| k )}}}{P( {k + 1} \middle| k )}}$where π_(d) ² is a total detection probability inside the detectiongate.
 17. A method of detecting a target, the method comprising:associating a measurement with a track; generating measurementassociation statistics for the track; generating and updating a trackquality value for a track based on a measurement-to-track associationlikelihood; and updating track lists based on the track quality valueand the measurement association statistics of the tracks in these lists.18. The method of claim 17, wherein the track lists comprise a list ofinitial tracks, a list of confirmed tracks, and a list of unobservabletracks.
 19. The method of claim 18, wherein the method further comprisesgenerating a preliminary version of the track.
 20. The method of claim19, wherein, for a current time step, the method comprises associatingmeasurements from a measurement list with the list of confirmed tracks,then the list of unobservable tracks, and then the list of initialtracks.
 21. The method of claim 19, wherein, for a current time step,the method comprises: associating measurements from a measurement listwith the list of confirmed tracks; removing the associated measurementsfrom the measurement list to generate a first updated measurement list;associating measurements from the first updated measurement list withthe list of unobservable tracks; removing the associated measurementsfrom the first updated measurement list to generate a second updatedmeasurement list; associating measurements from the second updatedmeasurement list and a third updated measurement list corresponding to aprevious time step with the list of initial tracks; and removing theassociated measurements from the second updated measurement list togenerate a third updated measurement list.
 22. The method of claim 19,wherein the method comprises processing the list of initial tracks bydeleting the initial tracks with a track quality value less than a firsttrack quality threshold.
 23. The method of claim 22, wherein the methodcomprises moving a remaining initial track to the list of confirmedtracks if the remaining initial track has a track quality value at thecurrent time step and a track quality value at a previous time step thatare both greater than a second track quality threshold, and measurementassociation statistics that indicate a number of associations greaterthan or equal to n_(i) where n_(i) is an integer.
 24. The method ofclaim 19, wherein the method comprises processing the list of confirmedtracks by deleting the confirmed tracks with a track quality value lessthan a third track quality threshold.
 25. The method of claim 24,wherein the method comprises moving a remaining confirmed track to thelist of unobservable tracks if the measurement association statistics ofthe remaining confirmed track indicates no measurement associations inthe last n_(na) time steps where n_(na) is an integer.
 26. The method ofclaim 19, wherein the method comprises processing the list ofunobservable tracks by deleting the unobservable tracks with a trackquality value less than a third track quality threshold.
 27. The methodof claim 26, wherein the method comprises moving a remainingunobservable track to the list of confirmed tracks if the remainingunobservable track has a track quality value greater than a second trackquality threshold and measurement association statistics that indicate anumber of new associations greater than or equal to na where na is aninteger.
 28. The method of claim 19, wherein the method comprisespredicting the track quality value at a future time step P(k+1|k) givena track quality value at a current time step by multiplying aprobability of a target existing for the track with the track qualityvalue after an update at the current time step.
 29. The method of claim28, wherein when the track is associated with a measurement at a futuretime step, the method comprises calculating a track quality valueP(k+1|k+1) by calculating a first sum by adding a likelihood that thetarget corresponding to the track exists and the associated measurementis from the target with a likelihood that the target exists and theassociated measurement is a false alarm, calculating a second sum byadding the first sum with a likelihood that the target does not existand the associated measurement is a false alarm, and dividing the firstsum by the second sum.
 30. The method of claim 28, wherein when thetrack is associated with a measurement at a future time step, the methodcomprises calculating a track quality value P(k+1|k+1) according to${P( {k + 1} \middle| {k + 1} )} = {\frac{1 - {\pi_{d}^{1}( {1 - {\Lambda ( {k + 1} )}} )}}{1 - {{\pi_{d}^{1}( {1 - {\Lambda ( {k + 1} )}} )}{P( {k + 1} \middle| k )}}}{P( {k + 1} \middle| k )}}$where π_(d) ¹ is a total detection probability inside a detection gatefor the target,${{\Lambda ( {k + 1} )} = \frac{f( {z( {k + 1} )} \middle| {x( {k + 1} \middle| k )} )}{f( {z( {k + 1} )} \middle|  )}},$ƒ(z(k+1)|x(k+1|k)) is a likelihood of a measurement z(k+1) given apredicted position of the target x(k+1|k), ƒ(z(k+1)|Φ) is a density offalse alarm at z(k+1) and k is the current time step.
 31. The method ofclaim 28, wherein when the track is not associated with a measurement ata future time step, the method comprises calculating a track qualityvalue P(k+1|k+1) by calculating a first sum by adding a likelihood thatthe target corresponding to the track exists and it is not detected witha likelihood that the target does not exist, and dividing the likelihoodthat the target corresponding to the track exists by the first sum. 32.The method of claim 28, wherein when the track is not associated with ameasurement at a future time step, the method comprises calculating atrack quality value P(k+1|k+1) according to:${P( {k + 1} \middle| {k + 1} )} = {\frac{1 - \pi_{d}^{2}}{1 - {\pi_{d}^{2}{P( {k + 1} \middle| k )}}}{P( {k + 1} \middle| k )}}$where π_(d) ² is a total detection probability inside the detectiongate.
 33. A radar system comprising: hardware configured to transmitradar pulses, receive reflected radar pulses, and process the reflectedradar pulses to provide pre-processed radar data; circuitry configuredto process the pre-processed radar data to detect targets and generateplots of the detected targets; and a tracking module configured toreceive the plots and generate tracks belonging to several track lists,wherein for a given track the tracking module is configured to associatea measurement with the track and generate measurement associationstatistics, generate and update a track quality value for the track, anddetermine which track list the track belongs to based upon the trackquality value and the measurement association statistics of the track.